/** Keriosity, ESIR
 * 	GpsThread: Thread qui va recuperer a interval de temps regulier les coordonnes GPS sur le serveur
 *	@author: GOUYET Brett
 *	@date: 16/05/2012, deniere modif: 16/05 
 */

package keriosity.core;


public class GpsThread extends Thread {
	
	protected IAuto _autoControler = null;
	protected boolean _isRunning;
	protected int _timeRepeat = 0;
	
	
	/** CONSTRUCTEUR **/ /////////////////AutoControler a la place de MapCOntroler et wifiCommaAuto
	public GpsThread(IAuto autoContoleur, int timeRepeat){
		
		_autoControler = autoContoleur;
		_timeRepeat = timeRepeat;
		_isRunning = false;
	}
		
	
	/** Lorsque le thread est en marche, il recupere toute les 4 secondes les coordonnees GPS
	 * grace au _connexionWifiAuto, puis deplace Keriosity sur la carte grace au _mapControler
	 */
	public void run() {
	
		try {
			while(_isRunning) {
				 
				_autoControler.getGPS(); //on recupere le GPS			
				sleep(_timeRepeat); //on attent _timeRepeat milisecondes
			}
		} catch (InterruptedException e) {}
	}

	/** Permet de stopper le thread */
	public void setIsRunning(boolean isRunning){		
		_isRunning = isRunning;
	}
}
